Formatted data transfers can be classified as cell transfers and packet transfers. In both cases a sequence of symbols is transferred through a data transmission medium, often called a channel. The symbols are the atomic elements of a transfer protocol, wherein a finite set of symbols is available. The channel can be implemented as a conduit which is able to transport said symbols sequentially from a transmitter to a receiver. Channels may be half duplex or full duplex. A half duplex channel supports unidirectional transfers while a full duplex channel provides transfer capability for both directions.
Cell transfers can be characterized by transferring a predefined number of symbols as an entity, called a “cell”. Higher level protocols are required to evaluate symbols transferred within a cell. Packet transfers use an entity with a variable length of symbols, called a “packet”, associated with higher level protocols. The data which the application intends to transfer is often called “payload data”. Useful sections of payload data may require multiple cells or packets. A protocol is needed in both cases to control the routing of the transmitted payload data through the network. It is also possible to apply an intermediate protocol layer to adapt the cell transfer architecture as a carrier for packet transfers. Electronic elements of a transmission link are often called “signals”.
Cell transfers often rely on so called out-band signaling, in which case payload data is transferred in one subset of signals of the physical link and cell structuring information as well as routing information are transferred via other signals of the physical link. In typical cases a symbol clock and possibly also cell start information is provided from a central resource via conduits other than those used for the data transfer itself. Since high speed differential signaling is used in plenty of applications, out-band signaling appears to be old-fashioned. Out-band signaling may require an excessive number of connector contacts on the involved electronic components or modules.
Cell transfers have a basic advantage that the storage of a cell requires always the same buffer size. On the other hand, payload data mostly does not match the cell size and therefore some bandwidth may be wasted.
The predefined size, also called “length” of the cell may vary from a few bytes to kilobytes in different cell transfer architectures. Cell transfers are often based on a synchronous interconnection of participants while most packet transfer protocols do not need a synchronization of the connected modules.
Cell based and packet based networks are often implemented so that the clients are connected to a central service called the switch instead of direct connections. The switch receives data in the form of cells or packets and resends it towards a target client. In certain cases synchronization and arbitration of the transfers are also provided by the central resource.
A switch, whether serving a cell transfer or a packet transfer network, inherently limits the number of connectable clients as well as the length of a cell or packet, respectively. There are always limits of technology to increase the bandwidth of the switch and also of the number of the data transfer links they support. There is also an ongoing effort to increase the data transfer capability of the conduits to ever higher values. At a given technology level switches used in parallel is the last and most expensive way to increase the performance of a network. An alternative is to include switches into each of the network participants and eliminate the need for dedicated switch components. Network participants equipped with a switch provide direct interface links to a number of network participants, ultimately utilizing the so called full mesh topology where each network participant has a direct connection link to each other network participant. Both central switching based and full mesh based solutions have limits of practicability. Full mesh networks are usually implemented for up to sixteen network participants.
In the case of full mesh networks a direct connection is installed between each pair of network participants, and each network participant is equipped with a switch function which provides links to all other network participants and to the local structure. An ideal implementation provides data switching service so that data can be transferred between two network participants via multiple routes simultaneously. Since the required bandwidth between the pairs of network participants may be extremely variable, high bandwidth data transfers can be realized utilizing the transfer capabilities via links which are momentarily not used by the directly attached components. The asserted possibility of adding a switch to each of the networked units appears as a simple task in hardware terms. It is however a highly complex task for the software to distribute the data streams via dynamically changing paths or even multiple paths in parallel. Therefore state of the art network solutions prefer central switching and call for the highest possible bandwidth to the switch.
For a network with dynamic data transmission path assignments it is a fundamental advantage if cells of uniform length and not varying length packets are used. For cell transfer structures in a large network using a common cell size within the network, the relative timing of the cell transfer periods is an important aspect. The easiest structure to handle is the totally synchronous case. This is however only available if central clocking control is used, whereas central control as well as out-band signaling have several detriments as stated above.
Very large networks cannot be centrally clocked, so they live with jitter and wander effects. Nevertheless such structures remain useful, even if complete cells need to be dropped if due to the slightly diverging clock speeds the cell offset exceeds the allowed limit.
For system level networking, cell transfer periods need to be aligned and locked across the network. This can be seen as a prerequisite for cell content forwarding.
In small networks, mostly implemented within a shelf with interconnections provided via a backplane, the technique of synchronous cell transfers does exist, but most up-to-date implementations prefer packet based transfers like Ethernet, InfiniBand, Serial RapidIO, or Serial Attached Small Computer System Interface (SAS).
For a cell transfer based network the advantage of the synchronous implementation is huge. There is a challenge though with such implementations. The source of the synchronicity is a specific clocking module. The clocking module transmits a clock signal towards all network participants. Highly reliable systems need dual redundant sourcing of the clock. The redundant clock sourcing as well as the usage of redundantly available clocks are complex parts of existing implementations.
Existing packet transfer technology inserts a controlled number of SKIP symbols between packets so as to ensure that in packet forwarding chains overflow or underflow conditions can be avoided.
In the PICMG 3.0® AdvancedTCA® specification full mesh interconnects for the backplane are defined, but with existing protocols it is complex and cost intensive to utilize the excessively high bandwidth capability of this interconnect architecture. One of the advantages of the full mesh interconnect is, that the two slots which are otherwise occupied by the central switching resources are available for any type of so called mesh enabled boards.